/*
 * =====================================================================================
 *
 *       Filename:  Queue.h
 *
 *    Description:  
 *
 *        Version:  1.0
 *        Created:  11/09/2012 07:16:43 PM
 *       Revision:  none
 *       Compiler:  gcc
 *
 *         Author:  Kjeldahl (), 
 *   Organization:  
 *
 * =====================================================================================
 */
#include <stdbool.h>
#include <string.h>
#include <stdlib.h>
#include <stdio.h>
#define SIZE 100
#define elmType int
typedef struct{
	elmType *data;
	int rear;
	int front;
	int length;
	int MaxSize;
}Queue;

Queue *initQueue();
void emptyQueue(Queue *Q); 
void destroyQueue(Queue *Q);
void unshift(Queue *Q,elmType value);
elmType pop(Queue *Q);
int getLength(Queue *Q);
elmType getFront(Queue *Q);
elmType getRear(Queue *Q);
bool isempty(Queue *Q);
void showQueue(Queue *Q);
int getMaxSize(Queue *Q);
void setMaxSize(Queue *Q,int size);
